SlideShare a Scribd company logo
1 of 25
ThemingDrupal menus This presentation will cover the basics of setting up navigation menus within Drupal Recommend DrupalContrib Modules to enhance your menu's functionality Provide CSS tips for themingDrupal menus
Introduction / Background Presenter Trent Wyman Occupation DrupalTheming Specialist, Drupal Developer DrupalExperience Began experimenting with Drupal in version 4.7.  Employed full-time as a Drupal Developer & Theming Specialist since version 5. Company Mediacurrentwww.mediacurrent.com About Mediacurrent Web development firm located in Alpharetta, GA.  focused solely on Drupal development and Drupalcustomization
Static Links v/s Drupal Menu Links Static Navigation Files (hard-coded menu links) sometimes written as HTML within a page file (pre Web 2.0) commonly used as include files to display globally or as needed (common method today) DrupalMenu Links Drupal'smenu system requires no direct coding or file management to add or edit navigation to your site Drupalmenus can be setup and managed without any knowledge of HTML, PHP, or other coding language
When to Use a Static Navigation File v/s When to Use Drupal's Menu System There is rarely a need to use static menu files in Drupal (due to its flexibility & ease-of-use) A static menu may be necessary when a site has graphic design requirements that are not possible using Drupalmenus
Examples when a static menu may be required The design uses non-websafefonts that have to be converted into images to use as buttons instead of standard text links Perhaps you need to granular theme your links and the default Drupal menu does not provide style classes specific enough to target individual links v/s others Applying custom background images and hover effects to menu items
Most often (if not always) you should create your site navigation using Drupal's menu system Easier to update and manage v/s static file Drupal’s menu output is Web Standards compliant Static menu files often contain validation errors that result from excessive editing from multiple programmers over a period of time Drupal menus are typically more accessible than static menus Links can be recognized and read by screen reader applications for those with visual disabilities Links are available via keyboard input and do not rely solely on mouse interaction. This makes navigation accessible to those with physical disabilities
Still feel limited to using a static menu file?There are alternatives to design limitations If the design does require non-websafe fonts, consider using the Dynamic Rendering module http://drupal.org/project/render If you need to granular theme your links and require unique style classes for all nested menu items, consider using a Drupalcontrib module to add more flexibility to your menus
The Drupal Menu System (out of the box) Primary Links Menu typically, primary links are used to refer to a site's main navigation menu that appears globally on a site Secondary Links Menu generally used to refer to sub-menu items belonging to a primary navigation (sub-section links belonging to a parent menu item) Drupal's Secondary Links Menu is separate from the Primary Links Menu (intended to be used as a lesser navigation) Navigation Menu Drupal’s administrative menu to navigate through administrative tasks (adding/editing content, configuring modules, etc.)
Drupal Menu System (out of the box)
Creating custom Drupal menus The easiest way to create a custom primary menu in Drupal is to add your own links into the existing Primary Links Menu To create a unique menu in Drupal you can click on the "Add Menu" tab located on the menu administration page www.yoursite.com/admin/build/menu/add
Creating custom Drupal menus
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) Nice Menus http://drupal.org/project/nice_menus Enables drop-down/right/left expandable menus.  Uses only CSS for most browsers, with minimal Javascript for IE6. Version 2 uses the SuperfishjQueryplugin for all browsers, with an option to disable JS, and falls back to CSS-only for browsers that can handle it.
Example of Nice Menus contrib module
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) DHTML Menu http://drupal.org/project/dhtml_menu Uses JavaScript to reduce the number of page loads when using nested menus When using default Drupal menus, to see the sub-items in a menu, you need to click the link of this item and wait for a full page load. After enabling DHTML Menu, clicking a menu link once will expand it to reveal its sub-items without reloading the page. Double-click on the item will load the page normally. Also sets a cookie to store which menus are open and which are closed, so that the state of the menus remain consistent as you navigate around the site.
Example of DHTML Menu module
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) JQuery Menu (http://drupal.org/project/jquerymenu) Jquerymenu uses simple, cross browser compatible jquery to make your multilevel menus collapsible and expandable. Unlike DHTML Menu (which requires you to click twice on a link to actually follow an expanded link)  Jquery menu separates the link from the expanding mechanism (displays small plus symbol that you click instead to expand the menu).
Example of Jquery Menu module
Techniques for ThemingDrupal Menu Links Assigning Drupal Menus to a Page Region Using Drupal blocks to display your menu within a region Script to programmatically display menu within a page template (.tpl file) Basic CSS targeting to theme your menu links Suckerfish CSS http://www.alistapart.com/articles/dropdowns/
Assigning Drupal Menus to a Page Region
Script that programmatically displays the Primary Links menu
Basic CSS Targeting to theme menu links If using Drupal's default Primary Menu, you can use basic CSS to target your links for theming
Suckerfish CSS techniques Enhances menu theming Provides hover states (drop downs) to your menu to hide & show 2nd & 3rd level links Suckerfish CSS is cross-browser compatible Uses a lightweight JavaScript file to apply mouseover & mouseout events to links
Example of Suckerfish CSS applied to a static menu http://www.carlos.emory.edu
Example of Suckerfish CSS applied to a Drupal menu http://localracing.nascar.com
Questions?

More Related Content

What's hot

Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal
Ebizon
 
Hello Drupal!
Hello Drupal!Hello Drupal!
Hello Drupal!
Acquia
 

What's hot (15)

Dreamweaver
DreamweaverDreamweaver
Dreamweaver
 
Standing up for the content creators: Site building and theming for the admin...
Standing up for the content creators: Site building and theming for the admin...Standing up for the content creators: Site building and theming for the admin...
Standing up for the content creators: Site building and theming for the admin...
 
Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal
 
Beginner's guide to drupal
Beginner's guide to drupalBeginner's guide to drupal
Beginner's guide to drupal
 
Open source cms-presentation-v1
Open source cms-presentation-v1Open source cms-presentation-v1
Open source cms-presentation-v1
 
Flaix responsive joomla template
Flaix responsive joomla templateFlaix responsive joomla template
Flaix responsive joomla template
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For Dummies
 
Hello Drupal!
Hello Drupal!Hello Drupal!
Hello Drupal!
 
Machine Exporter
Machine ExporterMachine Exporter
Machine Exporter
 
Introduction to drupal
Introduction to drupalIntroduction to drupal
Introduction to drupal
 
Content management system
Content management systemContent management system
Content management system
 
Cms
CmsCms
Cms
 
Consilium responsive joomla template
Consilium responsive joomla templateConsilium responsive joomla template
Consilium responsive joomla template
 
Consilium Responsive Joomla Template
 Consilium Responsive Joomla Template Consilium Responsive Joomla Template
Consilium Responsive Joomla Template
 
What I Like About Flare
What I Like About FlareWhat I Like About Flare
What I Like About Flare
 

Similar to Theming Drupal Menus

Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMS
softweb009
 
Drupal seminar at DDIT Nadiad
Drupal seminar at DDIT NadiadDrupal seminar at DDIT Nadiad
Drupal seminar at DDIT Nadiad
karmraj
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
Lauren Roth
 

Similar to Theming Drupal Menus (20)

Start with Drupal CMS
Start with Drupal CMSStart with Drupal CMS
Start with Drupal CMS
 
Neue Infos rund um WCAG 2.0
Neue Infos rund um WCAG 2.0Neue Infos rund um WCAG 2.0
Neue Infos rund um WCAG 2.0
 
Vskills certified open source cms drupal professional sample material
Vskills certified open source cms drupal professional sample materialVskills certified open source cms drupal professional sample material
Vskills certified open source cms drupal professional sample material
 
Drupal by Gaurav Boudh
Drupal by Gaurav BoudhDrupal by Gaurav Boudh
Drupal by Gaurav Boudh
 
Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMS
 
Drupal introduction
Drupal introductionDrupal introduction
Drupal introduction
 
Drupal 6x Installation
Drupal 6x Installation Drupal 6x Installation
Drupal 6x Installation
 
Introduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotechIntroduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotech
 
Drupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime CollegeDrupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime College
 
Drupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime CollegeDrupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime College
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
Content Management System
Content Management SystemContent Management System
Content Management System
 
Drupal seminar at DDIT Nadiad
Drupal seminar at DDIT NadiadDrupal seminar at DDIT Nadiad
Drupal seminar at DDIT Nadiad
 
Dashboard
DashboardDashboard
Dashboard
 
Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016
 
Menus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATSMenus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATS
 
Drupal Basics
Drupal BasicsDrupal Basics
Drupal Basics
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
 
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
 
Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09
 

More from Mediacurrent

More from Mediacurrent (20)

Penn State News: Pivoting to Decoupled Drupal with Gatsby
Penn State News: Pivoting to Decoupled Drupal with GatsbyPenn State News: Pivoting to Decoupled Drupal with Gatsby
Penn State News: Pivoting to Decoupled Drupal with Gatsby
 
Evolving How We Measure Digital Success in Higher Ed
Evolving How We Measure Digital Success in Higher EdEvolving How We Measure Digital Success in Higher Ed
Evolving How We Measure Digital Success in Higher Ed
 
Penn State scales static Drupal to new heights
Penn State scales static Drupal to new heightsPenn State scales static Drupal to new heights
Penn State scales static Drupal to new heights
 
Delivering Meaningful Digital Experiences in Higher Ed
Delivering Meaningful Digital Experiences in Higher EdDelivering Meaningful Digital Experiences in Higher Ed
Delivering Meaningful Digital Experiences in Higher Ed
 
Content Strategy: Building Connections with Your Audience
Content Strategy: Building Connections with Your AudienceContent Strategy: Building Connections with Your Audience
Content Strategy: Building Connections with Your Audience
 
Decoupled Drupal and Gatsby in the Real World
Decoupled Drupal and Gatsby in the Real WorldDecoupled Drupal and Gatsby in the Real World
Decoupled Drupal and Gatsby in the Real World
 
A Better Way to Build and Manage Sites with Rain for Drupal 9
A Better Way to Build and Manage Sites with Rain for Drupal 9A Better Way to Build and Manage Sites with Rain for Drupal 9
A Better Way to Build and Manage Sites with Rain for Drupal 9
 
Drupal Security: What You Need to Know
Drupal Security: What You Need to KnowDrupal Security: What You Need to Know
Drupal Security: What You Need to Know
 
Leveraging Design Systems to Streamline Web Projects
Leveraging Design Systems to Streamline Web ProjectsLeveraging Design Systems to Streamline Web Projects
Leveraging Design Systems to Streamline Web Projects
 
Reimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web StrategyReimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web Strategy
 
How to Digitally Transform Higher Ed with Drupal
How to Digitally Transform Higher Ed with DrupalHow to Digitally Transform Higher Ed with Drupal
How to Digitally Transform Higher Ed with Drupal
 
Is my website accessible? Common mistakes (and how to fix them)
Is my website accessible? Common mistakes (and how to fix them)Is my website accessible? Common mistakes (and how to fix them)
Is my website accessible? Common mistakes (and how to fix them)
 
Managing Images In Large Scale Drupal 8 & 9 Websites
Managing Images In Large Scale Drupal 8 & 9 WebsitesManaging Images In Large Scale Drupal 8 & 9 Websites
Managing Images In Large Scale Drupal 8 & 9 Websites
 
Paragraphs v Layout Builder - The Final Showdown
Paragraphs v Layout Builder - The Final ShowdownParagraphs v Layout Builder - The Final Showdown
Paragraphs v Layout Builder - The Final Showdown
 
MagMutual.com: On the JAMStack with Gatsby and Drupal 8
 MagMutual.com: On the JAMStack with Gatsby and Drupal 8 MagMutual.com: On the JAMStack with Gatsby and Drupal 8
MagMutual.com: On the JAMStack with Gatsby and Drupal 8
 
Creating an Organizational Culture of Giving Back to Drupal
Creating an Organizational Culture of Giving Back to DrupalCreating an Organizational Culture of Giving Back to Drupal
Creating an Organizational Culture of Giving Back to Drupal
 
Level Up Your Team: Front-End Development Best Practices
Level Up Your Team: Front-End Development Best PracticesLevel Up Your Team: Front-End Development Best Practices
Level Up Your Team: Front-End Development Best Practices
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
How to Prove Marketing ROI: Overcoming Digital Marketing Challenges
How to Prove Marketing ROI: Overcoming Digital Marketing ChallengesHow to Prove Marketing ROI: Overcoming Digital Marketing Challenges
How to Prove Marketing ROI: Overcoming Digital Marketing Challenges
 
Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Recently uploaded (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Theming Drupal Menus

  • 1. ThemingDrupal menus This presentation will cover the basics of setting up navigation menus within Drupal Recommend DrupalContrib Modules to enhance your menu's functionality Provide CSS tips for themingDrupal menus
  • 2. Introduction / Background Presenter Trent Wyman Occupation DrupalTheming Specialist, Drupal Developer DrupalExperience Began experimenting with Drupal in version 4.7. Employed full-time as a Drupal Developer & Theming Specialist since version 5. Company Mediacurrentwww.mediacurrent.com About Mediacurrent Web development firm located in Alpharetta, GA. focused solely on Drupal development and Drupalcustomization
  • 3. Static Links v/s Drupal Menu Links Static Navigation Files (hard-coded menu links) sometimes written as HTML within a page file (pre Web 2.0) commonly used as include files to display globally or as needed (common method today) DrupalMenu Links Drupal'smenu system requires no direct coding or file management to add or edit navigation to your site Drupalmenus can be setup and managed without any knowledge of HTML, PHP, or other coding language
  • 4. When to Use a Static Navigation File v/s When to Use Drupal's Menu System There is rarely a need to use static menu files in Drupal (due to its flexibility & ease-of-use) A static menu may be necessary when a site has graphic design requirements that are not possible using Drupalmenus
  • 5. Examples when a static menu may be required The design uses non-websafefonts that have to be converted into images to use as buttons instead of standard text links Perhaps you need to granular theme your links and the default Drupal menu does not provide style classes specific enough to target individual links v/s others Applying custom background images and hover effects to menu items
  • 6. Most often (if not always) you should create your site navigation using Drupal's menu system Easier to update and manage v/s static file Drupal’s menu output is Web Standards compliant Static menu files often contain validation errors that result from excessive editing from multiple programmers over a period of time Drupal menus are typically more accessible than static menus Links can be recognized and read by screen reader applications for those with visual disabilities Links are available via keyboard input and do not rely solely on mouse interaction. This makes navigation accessible to those with physical disabilities
  • 7. Still feel limited to using a static menu file?There are alternatives to design limitations If the design does require non-websafe fonts, consider using the Dynamic Rendering module http://drupal.org/project/render If you need to granular theme your links and require unique style classes for all nested menu items, consider using a Drupalcontrib module to add more flexibility to your menus
  • 8. The Drupal Menu System (out of the box) Primary Links Menu typically, primary links are used to refer to a site's main navigation menu that appears globally on a site Secondary Links Menu generally used to refer to sub-menu items belonging to a primary navigation (sub-section links belonging to a parent menu item) Drupal's Secondary Links Menu is separate from the Primary Links Menu (intended to be used as a lesser navigation) Navigation Menu Drupal’s administrative menu to navigate through administrative tasks (adding/editing content, configuring modules, etc.)
  • 9. Drupal Menu System (out of the box)
  • 10. Creating custom Drupal menus The easiest way to create a custom primary menu in Drupal is to add your own links into the existing Primary Links Menu To create a unique menu in Drupal you can click on the "Add Menu" tab located on the menu administration page www.yoursite.com/admin/build/menu/add
  • 12. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) Nice Menus http://drupal.org/project/nice_menus Enables drop-down/right/left expandable menus. Uses only CSS for most browsers, with minimal Javascript for IE6. Version 2 uses the SuperfishjQueryplugin for all browsers, with an option to disable JS, and falls back to CSS-only for browsers that can handle it.
  • 13. Example of Nice Menus contrib module
  • 14. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) DHTML Menu http://drupal.org/project/dhtml_menu Uses JavaScript to reduce the number of page loads when using nested menus When using default Drupal menus, to see the sub-items in a menu, you need to click the link of this item and wait for a full page load. After enabling DHTML Menu, clicking a menu link once will expand it to reveal its sub-items without reloading the page. Double-click on the item will load the page normally. Also sets a cookie to store which menus are open and which are closed, so that the state of the menus remain consistent as you navigate around the site.
  • 15. Example of DHTML Menu module
  • 16. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) JQuery Menu (http://drupal.org/project/jquerymenu) Jquerymenu uses simple, cross browser compatible jquery to make your multilevel menus collapsible and expandable. Unlike DHTML Menu (which requires you to click twice on a link to actually follow an expanded link) Jquery menu separates the link from the expanding mechanism (displays small plus symbol that you click instead to expand the menu).
  • 17. Example of Jquery Menu module
  • 18. Techniques for ThemingDrupal Menu Links Assigning Drupal Menus to a Page Region Using Drupal blocks to display your menu within a region Script to programmatically display menu within a page template (.tpl file) Basic CSS targeting to theme your menu links Suckerfish CSS http://www.alistapart.com/articles/dropdowns/
  • 19. Assigning Drupal Menus to a Page Region
  • 20. Script that programmatically displays the Primary Links menu
  • 21. Basic CSS Targeting to theme menu links If using Drupal's default Primary Menu, you can use basic CSS to target your links for theming
  • 22. Suckerfish CSS techniques Enhances menu theming Provides hover states (drop downs) to your menu to hide & show 2nd & 3rd level links Suckerfish CSS is cross-browser compatible Uses a lightweight JavaScript file to apply mouseover & mouseout events to links
  • 23. Example of Suckerfish CSS applied to a static menu http://www.carlos.emory.edu
  • 24. Example of Suckerfish CSS applied to a Drupal menu http://localracing.nascar.com